#ifndef MINER_WIFE_HPP
#define MINER_WIFE_HPP

#include <SmegCore/Entity/BaseObject.hpp>
#include <SmegCore/Game/StateMachine.hpp>
#include <SmegCore/Game/MessageInfo.hpp>

class MinerWife : public smeg::core::BaseObject {
private:
    smeg::core::StateMachine< MinerWife >*  m_pStateMachine;
    smeg::core::BaseObject*                 m_pHusband;

public:
                    MinerWife();
    virtual         ~MinerWife();

    DECLARE_CLONE_FUNC( MinerWife, BaseObject )

    virtual void    Update( float _fDeltaTime );
    virtual bool    HandleMessage( const smeg::core::MessageInfo& _Msg );

    smeg::core::StateMachine< MinerWife >*  GetStateMachine();

    void                                SetHusband( smeg::core::BaseObject* _pHusband );
    smeg::core::BaseObject*             GetHusband() const;
};

#endif // MINER_WIFE_HPP